#define _CRT_SECURE_NO_WARNINGS 1

//#define my_offsetof(type,member) ((size_t)&(((type*)0)->member))
//
//#include<stdio.h>
//#include<stddef.h>
//
//struct stu
//{
//    char name[20];
//    char sex[5];
//    char num[20];
//    int grade;
//};
//
//int main()
//{
//    printf("%zd\n", my_offsetof(struct stu, grade));
//    printf("%zd\n", my_offsetof(struct stu, sex));
//    printf("%zd\n", my_offsetof(struct stu, num));
//    printf("%zd\n", my_offsetof(struct stu, name));
//
//    return 0;
//}

#include <stdio.h>

#define CHANGE(x) (((x&0xAAAAAAAA)>>1)|((x&0x55555555)<<1))

int main()
{
	int a = 11;
	printf("%d\n", CHANGE(a));

	return 0;
}